package com.yunxi.otd.pojo;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.yunxi.core.web.DateJsonDeserializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 周度需求计划
 * </p>
 *
 * @author  XUQI
 * @since 2019-05-09
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="PmsOtdWeekPlan对象", description="周度需求计划")
public class OtdWeekPlanVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "周度需求计划ID")
    private String weekPlanId;

    @ApiModelProperty(value = "周度需求计划CODE")
    private String weekPlanCode;

    @ApiModelProperty(value = "需求年")
    private String year;

    @ApiModelProperty(value = "需求月")
    private String month;

    @ApiModelProperty(value = "需求周")
    private String week;

    @ApiModelProperty(value = "总需求数量")
    private Integer sumPlanNum;

    @ApiModelProperty(value = "接口总需求数量")
    private Integer ifSum;

    @ApiModelProperty(value = "状态")
    private String state;

    @JsonDeserialize(using = DateJsonDeserializer.class)
    @ApiModelProperty(value = "发布时间")
    private Date releaseTime;

    @ApiModelProperty(value = "创建人")
    private String createBy;

    @JsonDeserialize(using = DateJsonDeserializer.class)
    @ApiModelProperty(value = "创建时间")
    private Date createDate;

    @ApiModelProperty(value = "最后修改人")
    private String updateBy;

    @JsonDeserialize(using = DateJsonDeserializer.class)
    @ApiModelProperty(value = "最后修改时间")
    private Date updateDate;

    @ApiModelProperty(value = "版本号")
    private Integer version;

    @ApiModelProperty(value = "接口传送标识")
    private Integer isSend;

    @ApiModelProperty(value = "是否删除")
    private Integer isDel;

    @ApiModelProperty(value = "明细集合")
    private List<OtdWeekPlanDetailVO> weekPlanDetailVOList;

    @ApiModelProperty(value = "周计划单车")
    private List<OtdWeekPlanSingleVO> singleVOList;


    private String mark;


}
